package towerDefense;

/**
 * Type of tower that creates Bullet projectiles against each enemy in the field. 
 * 
 * @author Guillermo Mendez-Kestler
 *
 */
public class Tower_Bullet extends T_Tower implements I_Tower {
	
	/**
	 * The default size of the tower. Default size is set to 
	 */
	public static final int TOWER_SIZE = 10;

	/**
	 * Initial cost of base TOWER
	 */
	public static final int INITIAL_BUILD_COST = 50;

	/**
	 * The amount it costs to upgrade a tower increases by this amount. 
	 */
	public static final int UPGRADE_COST = 50;

	/**
	 * Builds a BULLET type tower at LEVEL 1. 
	 */
	public Tower_Bullet() {
		super(Constants.TOWER_BULLET);
		setBuildCost(getBuildCost()+INITIAL_BUILD_COST+UPGRADE_COST);
	}

	/**
	 * Builds a BULLET type tower at LEVEL 1 at the specified coordinates. 
	 * 
	 * @param x_coord X Coordinate the tower will be built at. 
	 * @param y_coord Y Coordinate the tower will be built at. 
	 */
	public Tower_Bullet(double x_coord, double y_coord) {
		super(x_coord, y_coord, TOWER_SIZE, Constants.TOWER_BULLET);
		setBuildCost(getBuildCost() + INITIAL_BUILD_COST+UPGRADE_COST); 
	}

}//class
